//
//  BBApplicationSupport.m
//  BBTouch
//
//  Created by ben smith on 8/12/08.
//  This file is part of BBTouch.
//
//  BBTouch is free software: you can redistribute it and/or modify
//  it under the terms of the GNU Lesser General Public License as published by
//  the Free Software Foundation, either version 3 of the License, or
//  (at your option) any later version.

//  BBTouch is distributed in the hope that it will be useful,
//  but WITHOUT ANY WARRANTY; without even the implied warranty of
//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//  GNU Lesser General Public License for more details.

//  You should have received a copy of the GNU Lesser General Public License
//  along with BBTouch.  If not, see <http://www.gnu.org/licenses/>.
// 
//  Copyright 2008 Ben Britten Smith ben@benbritten.com .
//

#import "BBApplicationSupport.h"


@implementation BBApplicationSupport

// access to the app support folder
// if it doesnt exist it makes it
+(NSString*)applicationSupportFolder 
{	
	NSArray *paths = NSSearchPathForDirectoriesInDomains(NSApplicationSupportDirectory, NSUserDomainMask, YES);
	NSString *basePath = ([paths count] > 0) ? [paths objectAtIndex:0] : NSTemporaryDirectory();
	// got the app support directory, now check to make sure there is a folder for us
	NSString * dir = [basePath stringByAppendingPathComponent:@"BBTouch"];
	if (![[NSFileManager defaultManager] fileExistsAtPath:dir isDirectory:NULL]) {
		[[NSFileManager defaultManager] createDirectoryAtPath:dir attributes:nil];
	}	
	return dir;
}

// this only returns a valid string if the path exisits, otherwise you get a nil
+(NSString*)pathForApplicationSupportFileWithName:(NSString*)name
{
	NSString * directory = [BBApplicationSupport applicationSupportFolder];
	NSString * filePath = [directory stringByAppendingPathComponent:name];
	if ([[NSFileManager defaultManager] fileExistsAtPath:filePath]) {
		return filePath;
	}
	return nil;
}

@end
